Method for beam hardening correction in quantitative computed X-ray tomography

ABSTRACT

Each voxel is assumed to contain exactly two distinct materials, with the volume fraction of each material being iteratively calculated. According to the method, the spectrum of the X-ray beam must be known, and the attenuation spectra of the materials in the object must be known, and be monotonically decreasing with increasing X-ray photon energy. Then, a volume fraction is estimated for the voxel, and the spectrum is iteratively calculated.

RELATED APPLICATIONS

The present application claims the benefit of priority from copending provisional patent application 60/108,257, filed on Nov. 12, 1998, which is hereby incorporated by reference.

This invention was made with U.S. Government support under grant numbers NCC-5186 and NCC2-5088 awarded by NASA. The National Institutes of Health also supported the development of the present invention under grant P41-RR09784. The Government has certain rights in the invention.

FIELD OF THE INVENTION

The present invention relates generally to computer assisted tomography and quantitative computed tomography (both known as CT imaging). More particularly, it relates to a method for processing CT imaging data that corrects for beam hardening errors.

BACKGROUND OF THE INVENTION

CT imaging is extensively used for medical imaging and the imaging of objects. In CT imaging, X-rays are projected through the object being imaged, and these X-rays are detected by arrays of detectors. The X-rays are projected through the object in many different directions. The combination of X-ray trajectories through the object provides data from which the internal structure of the object can be determined. Contrast in CT images is provided by variations in X-ray attenuation within the object. No other contrast parameters are available. Therefore, accurate measurements of X-ray attenuation are required for high quality CT images.

Quantitative computed tomography (QCT) is a technique that allows for quantitative measurements of physical properties related to X-ray attenuation. QCT has been used for in-vivo quantitative measurements of bone density, for example. The uses of QCT include assessment of spinal trabecular bone, evaluation of drug therapy in the treatment of osteoporosis, screening for osteoporosis, fracture risk assessment and many others. Although QCT is now an established tool for bone densitometry, there exist major issues affecting the accuracy and precision of QCT measurements.

QCT measurements and CT images are affected by beam hardening error in X-ray attenuation measurements. Beam hardening error is caused by the energy-dependence of X-ray transmission within an object being imaged. In any material, low-energy X-rays are attenuated more strongly than high-energy X-rays. Therefore, as a polychromatic X-ray beam passes through an object, the proportion of high energy X-rays in the beam increases, and attenuation decreases. Long path lengths through an object therefore appear to have an excessively small attenuation. When an image is computed, the center of an object appears to have a lower attenuation than the outer regions of the object. In this way, beam hardening error produces inaccurate measurements in QCT. Correction of beam hardening errors has been an active area of research since 1975. Some popular current correction techniques for beam hardening require strict assumptions about the X-ray attenuation characteristics of the materials within the object. The two most commonly used techniques are the water and bone corrections which assume that the materials in the scan field are either water-equivalent or dense bone-equivalent in X-ray attenuation characteristics. For more information regarding these techniques, reference can be made to “A Method for Correcting Bone Induced Artifacts in Computed Tomography Scanners” by P. M. Joseph and R. D. Spital in the Journal of Computer Assisted Tomography vol. 2, pp. 481-487, 1978 and “Post-Reconstruction Method for Beam Hardening in Computed Tomography” by O. Nalcioglu and R. Y. Lou in Physics in Medicine and Biology, vol 24, pp.330-340, 1979.

In another beam hardening correction method, calibration tubes having a known transmission characteristic are used. However, this method is often not effective for two reasons: 1) different regions in the scan field experience different degrees of beam hardening, and 2) calibration tubes cannot capture the beam hardening characteristics in vicinity of a patients bone because the calibration tube must be placed outside the body.

There exists a need in the art of CT imaging and QCT for an improved method of beam hardening correction. An improved beam hardening correction technique will provide QCT measurements and CT images with improved accuracy.

OBJECTS AND ADVANTAGES OF THE INVENTION

Accordingly, it is a primary object of the present invention to provide an improved method for beam hardening correction that:

1) accurately corrects beam hardening errors;

2) does not require knowledge of the attenuation characteristics of the X-ray detectors used in the CT imager;

3) does not require calibration tubes;

4) can be used with objects comprising many different materials.

These and other objects and advantages will be apparent upon reading the following description and accompanying drawings.

SUMMARY OF THE INVENTION

The present invention provides a method for beam hardening correction in CT imaging data. The present method includes reiterative calculations that converge on accurate measurements of X-ray attenuation. In a first variation of the present invention, the following information is required:

1) The attenuation spectra for materials within the object being imaged. Each voxel is assumed to contain at most two materials.

2) The output spectra of the X-ray source.

3) The output data from the X-ray detectors.

An initial estimation is made of volume fraction of the two materials in each voxel. Then, a reiterative calculation is performed that converges upon the true volume fraction for each material in each voxel.

In a second variation of the present invention, the following information is required:

1) Two basis attenuation spectra. The attenuation spectra do not need to correspond to real materials.

2) Output spectra from the X-ray source at two different settings (e.g. two different X-ray tube voltages).

3) Output data from the X-ray detectors at the two X-ray source settings.

An initial estimation is made of the relative weighting of the two basis attenuation spectra based on a linear combination of the basis spectra. Then, a reiterative calculation is performed that converges upon the relative weightings of the basis attenuation spectra that produce the observed measurements. A separate reiterative calculation is performed for each voxel. In this way, an accurate measurement of the attenuation spectrum for each voxel is provided.

DESCRIPTION OF THE FIGURES

FIG. 1 (Prior Art) shows a CT imaging device as known in the art.

FIG. 2 shows exemplary attenuation spectra for bone, soft tissue and fat.

FIGS. 3a-3 c illustrate an essential restriction on characteristics of attenuation spectra used in the present method.

DETAILED DESCRIPTION

FIG. 1 shows a CT imaging device as known in the art of CT imaging. The device includes an X-ray source 20, such as an electron tube, and X-ray detectors 22. An object 24 to be imaged is disposed between the source 20 and detectors 22. The source and detectors are attached to a rigid frame 26 that is free to rotate around the object 24. X-ray beam paths 28 extend from the source to detectors through the object 24. In operation, X-ray intensity is measured at every detector at many different orientations of the rigid frame with respect to the object. The number of discrete measurement made in a complete scan is equal to N×K, where N is the number of positions of the frame used during a scan, and K is the number of detectors. In the following discussion, it is understood that there are N×K beam paths, with each beam path corresponding to an X-ray intensity measurement.

The object is divided into volume elements, or voxels. Each voxel within the object is located in the paths of several beam paths. Therefore, each voxel affects many X-ray intensity measurements. The challenge of CT imaging is to separate the X-ray attenuation contributions from each voxel.

THEORY

The attenuation along any beam path is a function of the attenuation coefficient of the material in the beam path and the energy spectrum of the X-ray source. For a given beam path r through the object, the corresponding detector measurement C is given by:

C(r)=−log∫S(E)exp(∫_(r)μ(x,E)dx)dE

where:

1) S(E) is the energy spectrum of the X-ray source and must be known to the experimenter, and

2) μ(x,E) is the linear attenuation coefficient of a voxel at X-ray photon energy E and location x.

Consider the operator B defined by Bμ=C. The operator B is nonlinear with respect to μ:

B(μ₁+μ₂)≠Bμ₁+Bμ₂

This nonlinear characteristic is the main cause of beam hardening artifacts in CT images.

The problem of calculating CT images while minimizing beam hardening errors can be restated as follows: given S(E) and C(r), find μ(x,E) that satisfies C(r)=−log∫S(E)exp(∫_(r)μ(x,E)dx)dE.

The problem of constructing a CT image without beam hardening errors is to find μ(x,E) from the detector measurements C(r). Since μ(x,E) is a three-dimensional function, and C(r) is a two dimensional function, the problem is not well posed. In order to find a stable solution, μ(x,E) must be regularized. The present invention includes two different regularization methods associated with two different CT methods: single energy reconstruction and dual energy reconstruction.

FIG. 2 shows typical relative attenuation coefficients μ(E) for bone, soft tissue and fat. The attenuation coefficients are monotonically decreasing with increasing E.

SINGLE ENERGY RECONSTRUCTION

In the single energy reconstruction embodiment of the present invention, it is necessarily assumed that each voxel consists of at most two different known materials. The materials may be different in each voxel. For a particular voxel at location x, the attenuation coefficient μ(x,E) can be written as a linear combination of two attenuation coefficients according to the equation

μ(x,E)=v(x)μ₁(x,E)+(1−v(x))μ₂(x,E)

where μ₁(x,E) is the attenuation coefficient for material 1, μ₂(x,E) is the attenuation coefficient for material 2, and v(x) is the volume fraction of material 1 within the voxel at location x. Other voxels within the object may contain materials other than materials 1 and 2, but each voxel is modeled to have exactly two distinct materials. A CT image is provided by finding the volume fraction v for each voxel.

In the present invention it is necessary to impose the following requirements on the attenuation coefficients μ₁ and μ₂:

1) Both μ₁ and μ₂ must be monotonically decreasing with increasing E, and

2) The quantity μ₁-μ₂ must be either positive and monotonically decreasing, or negative and monotonically increasing.

Although not always specifically noted in the present description, it is understood that the attenuation coefficients μ are functions of location x and photon energy E, and the volume fraction v is a function of location x.

FIGS. 3a-3 c illustrate requirement (2). FIG. 3a shows attenuation coefficients which cross, and therefore violate requirement (2). FIG. 3b shows attenuation coefficients for which μ₁-μ₂ is either positive monotonic increasing or negative monotonic decreasing and therefore violate requirement (2). FIG. 3c shows an exemplary plot of attenuation coefficients that satisfy requirement (2).

Next we define an operator P that is linear in μ:

Pμ(r)=∫∫S(E)μ(x,E)dEdx.

It is noted that P⁻¹ exists and that P⁻¹P≠I. This is true because

∫S(E)μ(x,E)dE=P⁻¹Pμ.

According to the single energy reconstruction method of the present invention, the volume fraction v(x) in the voxels comprising the object is found using the following algorithm:

1) Assume an initial estimate for v(x), given by v⁰(x).

2) Calculate a total estimated attenuation coefficient μ^(k) using the equation and the current estimate of v(x), given by v^(k)(x) (v⁰(x)=v^(k)(x) in the first iteration):

μ^(k)=v^(k)(x)μ₁(x,E)+(1−v^(k)(x))μ₂(x,E)

3) Calculate μ^(k+1) using the equation:

μ^(k+1)=P⁻¹{Pμ^(k)−Bμ^(k)+C(r)}

where C(r) is the measured data.

4) Solve for v^(k+1) in the following equation:

μ^(k+1)=v^(k+1){circumflex over (μ)}₁+(1−v^(k+1)){circumflex over (μ)}₂

where:

{circumflex over (μ)}₁=∫S(E)μ₁(x,E)dE, and

{circumflex over (μ)}₂=∫S(E)μ₂(x,E)dE.

5) Substitute v^(k+1) for v^(k) in step (2), and reiterate the process until successive values v^(k+2), v^(k+3), v^(k+4). . . converge. In one particular embodiment, convergence is defined by: $\frac{{{}B\quad \mu^{k + 1}} - {{C(r)}{}_{2}}}{{{}B\quad \mu^{k}} - {{C(r)}{}_{2}}} \geq {0.98.}$

Generally, the algorithm should be iterated at least twice for significant improvement over conventional techniques. More preferably, the algorithm is repeated 4-5 times. Significant improvements are generally not provided by repeating the algorithm more than 5 times.

The initial estimate v⁰ does not need to be close to the final value of v⁰ in order to arrive at a correct solution using the present method. However, an initial estimate close to the final value of the convergent series will reduce the number of iterations and the processing time.

It is noted that the present invention cannot be applied to a single voxel in isolation, unless the object comprises a single voxel. This is because calculations for every voxel affect calculations for other voxels, and the entire solution must be self-consistent.

DUAL ENERGY RECONSTRUCTION

In the dual energy reconstruction, it is assumed that the attenuation coefficient μ(x,E) can be expressed as a linear combination of two basis attenuation functions μ₁(x,E) and μ₂(x,E):

μ(x,E)=A(x)μ₁(x,E)+D(x)μ₂(x,E),

where basis coefficients A(x) and D(x) are real numbers. The basis functions μ₁(x,E) and μ₂(x,E) do not necessarily correspond to attenuation coefficients of any known material. In a particular object comprising many voxels, each voxel may be modeled by different basis attenuation functions. For example, a single object may comprise several basis attenuation functions, but any particular voxel is associated with exactly two basis attenuation functions.

Just as in the single energy method, it is necessary to impose the following requirements on the basis attenuation functions and μ₂:

1) Both μ₁ and μ₂ must be monotonically decreasing with increasing E, and

2) The quantity μ₁-μ₂ must be either positive and monotonically decreasing, or negative and monotonically increasing.

In the dual energy reconstruction, two scans of the object must be performed with distinct X-ray beam spectra, S₁(E) and S₂(E). The beam spectra S₁(E) and S₂(E) can be provided by applying different accelerating voltages to an X-ray tube (e.g. 80 kV and 120 kV as known in the art), or by placing different X-ray filters in the X-ray beam. Many different techniques for altering the X-ray spectrum are well known in the art and are often used in X-ray tomography.

In the dual energy reconstruction, the attenuation spectrum for a voxel is characterized when coefficients A(x) and D(x) are found. The attenuation spectrum may be used to identify materials within the voxel, or for other purposes.

According to the dual energy reconstruction method of the present invention, the basis coefficients A and D are found by using the following algorithm:

1) Assume initial estimates for basis coefficients A(x) and D(x), given by A⁰(x) and D⁰(x).

2) Calculate μ^(k) using the equation and the current estimates of A and D, given by A^(k)(x) and D^(k)(x) (A⁰(x)=A^(k)(x) and D⁰(x)=D^(k)(x) in the first iteration):

μ^(k)(x,E)=A^(k)(x)μ₁(x,E)+D^(k)(x)μ₂(x,E)

3) Using μ^(k), calculate μ^(k+1,S1) for the spectrum S₁(E) using the equation:

μ^(k+1,S1)=P⁻¹{Pμ^(k)−Bμ^(k)+C(r)},

where operators P, B, and C(r) are defined with respect to S₁(E).

4) Using μ^(k), calculate μ^(k+1,S2) for the spectrum S₂(E) using the equation:

μ^(k+1,S2)=P⁻¹{Pμ^(k)−Bμ^(k)+C(r)},

where operators P, B, and C(r) are defined with respect to S₂(E).

5) Calculate A^(k+1) and D^(k+1) using the following simultaneous equations:

μ^(k+1,S1)=A^(k+1){circumflex over (μ)}_(1,S1)+D^(k+1){circumflex over (μ)}_(2,S1), and

μ^(k+1,S2)=A^(k+1){circumflex over (μ)}_(1,S2)+D^(k+1){circumflex over (μ)}_(2,S2),

where {circumflex over (μ)}_(1,S1)=∫S₁(E)μ₁(E)dE, {circumflex over (μ)}_(1,S2)=∫S₂(E){circumflex over (μ)}₁(E)dE, {circumflex over (μ)}_(2,S1)=∫S₁(E){circumflex over (μ)}₂(E)dE, and

{circumflex over (μ)}_(2,S2)=∫S₂(E){circumflex over (μ)}₂(E)dE.

6) Substitute A^(k+1) and D^(k+1) in step (2), and reiterate the process until successive values A^(k+1), A^(k+2). . . and D^(k+1) , D^(k+2). . . converge. In one particular embodiment, convergence is defined by: $\frac{{{}B\quad \mu^{k + 1}} - {{C(r)}{}_{2}}}{{{}B\quad \mu^{k}} - {{C(r)}{}_{2}}} \geq {0.98\quad {for}\quad {S_{1}(E)}\quad {and}\quad {S_{2}(E)}}$

After being computed, the coefficients A and D and basis attenuation functions μ₁ and μ₂ can be used to reconstruct the attenuation spectra of individual voxels. The reconstructed attenuation spectrum can be used to identify materials in the object, or for many other purposes such as bone density measurements.

As in the single energy method, the dual energy method cannot be applied to a single voxel in isolation, unless the object comprises a single voxel. This is because calculations for every voxel affects calculations for other voxels, and the entire solution must be self-consistent.

The methods of the present invention provide improvements in beam hardening errors. Further applications of the present invention to signal processing from X-ray tomography will be apparent to one skilled in the art.

PROOF

This section contains the theoretical foundation for the iterative Single energy reconstruction algorithm. We show that the reconstruction problem can be formulated as a fixed point problem and the Banach fixed point theorem ensures that the algorithm will always converge to a unique solution. For ease of understanding, we divide the proof into two theorems. Theorem 1 uses the results from Theorem 2 to illustrate the unique convergence properties of the iterative algorithm.

Theorem 1 (Iterative polychromatic reconstruction)

Let m*(x,E) be an unknown attenuation function which can be expressed by a two mixture model:

μ*(x,E)=v*(x)μ₁(x,E)+(1−v*(x))μ₂(x,E)

where v*(x) is the volume fraction of the first material at location x and μ₁, μ₂ are attenuation spectra of the two known materials, with the following properties:

1) For any x, μ₁ and μ₂ are monotonically decreasing functions with respect to E.

2) For any x, the quantity μ₁-μ₂ is a positive monotonically decreasing function with respect to E.

Let C=Bμ* be the polychromatic projection of m* with respect to the polychromatic spectrum S(E). Then the sequence {v^(k)} which satisfies:

v^(k){circumflex over (μ)}₁+(1−v^(k)){circumflex over (μ)}₂=P⁻¹{Pμ^(k−1)−Bμ^(k−1)+C}

where

μ^(k−1)=v^(k−1)μ₁+(1−v^(k−1))μ₂,

{circumflex over (μ)}₁=∫S(E)μ₁(x,E)dE,

and

{circumflex over (μ)}₂=∫S(E)μ₂(x,E)dE,

converges to the true volume fraction function v* independent of the initial estimate v⁰.

In the above problem, the true volume fraction v* is a fixed point mapping T,

V*=T(v*),

where T is defined as

w=T(v): w{circumflex over (μ)}₁+(1−w){circumflex over (μ)}₂=P⁻¹{P(vμ₁+(1−v)μ₂)−B(vμ₁+(1−v)μ₂)+C}

The Banach fixed point theorem states that if T is a contraction on the space of volume fraction V,

∀x,yεV,\αε,α≦1 such that ∥T(x)−T(y)∥≦α∥x−y∥,

then T has precisely one fixed point and the iterative sequence {v^(k)}, from the procedure v^(k)=T(v^(k−1)) converges to the unique fixed point v* of T with arbitrary v⁰εV. Hence, proving that T is a contraction on V is sufficient.

Let v_(a), v_(b) be any two volume fraction functions and μ_(a), μ_(b), p_(a), p_(b), w_(a), w_(b) be defined as follows:

μ_(a)=v_(a)μ₁+(1−v_(a))μ₂

μ_(b)=v_(b)μ₁+(1−v_(b))μ₂

p_(a)=Pμ_(a)−Bμ_(a)+C

p_(b)=Pμ_(b)−Bμ_(b)+C

w_(a)=T(v_(a))

w_(b)=T(v_(b))

Defining f(r,E)=∫_(r)μ_(a)(x,E)dx and g(r,E)=∫_(r)μ_(b)(x,E)dx, we have

|P_(a)(r)−P_(b)(r)|=|E{f }−E{g}−[−log E{exp(−f)}]+[−log E{exp(−g)}]|

where the expectation is taken with respect to the beam spectrum profile S(E). Using the results from the above equation leads to

|P_(a)(r)−P_(b)(r)|≦|E{f}−E{g}|=|Pμ_(a)−Pμ_(b)|.

Taking p⁻¹ on both sides of the above equation leads to

|∫_(r)(w_(a)(x)−w_(b)(x))({circumflex over (μ)}₁(x)−{circumflex over (μ)}₂(x))dx |<|∫_(r)(v_(a)(x)−v_(b)(x))({circumflex over (μ)}₁(x)−{circumflex over (μ)}₂(x))dx|

The above inequality is equivalent to

∥w_(a)−w_(b)∥≦∥v_(a)−v_(b)∥

∥T(v_(a))−T(v_(b))∥≦∥v_(a)−v_(b)∥

where the norm is defined as

vεV,∥v∥=∫|∫_(r)v(r) ({circumflex over (μ)}₁(x)−{circumflex over (μ)}₂(x))dx|dr

Thus T is a contraction on V.

Theorem 2

Let f and g be positive monotonically decreasing functions such that f—g is a positive monotonically decreasing function, then

E{f}−E{g}>[−log E {exp(−f)}]−[−log E{exp(−g)}]

where the expectation is taken with respect to any probability density function.

Proof

Let the expectation be based on probability density function h. We define t:[0,1]→as

t(α)=E_(h){g+α(f−g)}−[−log E_(h){exp(−g−α(f−g))}]

By Jensens inequality, t(0)≧0. Differentiating with respect to α, we have $\frac{t}{\alpha} = {{E_{h}\left\{ {f - g} \right\}} - \frac{E_{h}\left\{ {\left( {f - g} \right){\exp \left( {{- g} - {\alpha \left( {f - g} \right)}} \right)}} \right\}}{E_{h}\left\{ {\exp \left( {{- g} - {\alpha \left( {f - g} \right)}} \right)} \right\}}}$ $\frac{t}{\alpha} = {{E_{h}\left\{ {f - g} \right\}} - {E_{h^{\prime}}\left\{ {f - g} \right\}}}$

where h′ is a probability density function defined by $h^{\prime} = {\frac{\exp \left( {{- g} - {\alpha \left( {f - g} \right)}} \right)}{E_{h}\left\{ {\exp \left( {{- g} - {\alpha \left( {f - g} \right)}} \right)} \right\}}h}$

Since f and g are monotonically decreasing functions, exp(—g—α(f—g—)) is a monotonically increasing function for any αε[0,1].

Thus we conclude that $\frac{t}{\alpha} = {{{{E_{h}\left\{ {f - g} \right\}} - {E_{h^{\prime}}\left\{ {f - g} \right\}}} > {0\quad {for}\quad {any}\quad \alpha}} \in \left\lbrack {0,1} \right\rbrack}$

This shows that t is a monotonically increasing function. Thus we have t(1)>t(0), which is equivalent to:

E{f}−E{g}>[−log E{exp(−f)}]−[−log E{exp(−g)}].

It will be clear to one skilled in the art that the above embodiment may be altered in many ways without departing from the scope of the invention. Accordingly, the scope of the invention should be determined by the following claims and their legal equivalents. 

What is claimed is:
 1. A method for calculating characteristics of an object comprising voxels using an X-ray computer assisted tomography device, comprising the steps of: a) projecting through the object an X-ray beam having a known energy spectrum indicated by S(E); b) detecting the X-rays with an X-ray detector; c) repeating steps (a) and (b) for at least two different orientations of the X-ray beam with respect to the object; d) defining a first material and a second material within each voxel, wherein the first and second materials have known distinct attenuation spectra, given by μ₁(x,E) and μ₂(x,E), respectively, such that a total attenuation coefficient μ(x,E) of the object is given by: μ(x,E)=v(x)μ₁(x,E)+(1−v(x))μ₂(x,E) where v(x) is a number between 0 and 1 and indicates a volume fraction of each voxel comprised of the first material; e) defining an initial estimated volume fraction v^(k)(x); f) calculating an estimated total attenuation coefficient μ^(k)(x,E) from the equation; μ^(k)(x,E)=ν^(k)(x)μ₁(x,E)+(1−v^(k)(x))μ₂(x,E) g) calculating a new estimated total attenuation coefficient μ^(k+1)(x,E) from the following equation: μ^(k+1)(x,E)=P⁻¹{Pμ^(k)(x,E)−Bμ^(k)(x,E)+C(r)} where P is an operator defined by Pμ=∫_(r)∫S(E)μ(E)dEdx, B is an operator defined by Bμ=−log∫S(E)exp(∫_(r)μ(E)dx)dE, and C(r) represents X-ray detector output, and r indicates the X-ray beam path; h) calculating a new estimated volume fraction v^(k+1) from the following equation: μ^(k+1)(x,E)=v^(k+1)(x,E){circumflex over (μ)}₁(x,E)+(1−v^(k+1)(x)){circumflex over (μ)}₂(x,E) where {circumflex over (μ)}₁(E)=∫S(E)μ₁(E)dE and {circumflex over (μ)}₂(E)=∫S(E)μ₂(E)dE i) repeating steps (f), (g) and (h) using the new estimated volume fraction v^(k+1)(x) instead of the initial estimated volume fraction v^(k)(x).
 2. The method of claim 1 wherein steps (f), (g), and (h) are repeated using a successive value of the estimated volume fraction v^(k+2).
 3. The method of claim 1 wherein steps (f), (g), and (h) are repeated 4 times using successive values of the estimated volume fraction.
 4. The method of claim 1 wherein steps (f), (g), and (h) are repeated until $\frac{{{}B\quad \mu^{k + 1}} - {{C(r)}{}_{2}}}{{{}B\quad \mu^{k}} - {{C(r)}{}_{2}}} \geq {0.98.}$


5. A method for calculating characteristics of an object comprising voxels using an X-ray computer assisted tomography device, comprising the steps of: a) projecting through the object a first X-ray beam having a known energy spectrum indicated by S₁(E); b) detecting the first X-ray beam with an X-ray detector; c) repeating steps (a) and (b) for at least two different orientations of the first X-ray beam with respect to the object; d) projecting through the object a second X-ray beam having a known energy spectrum indicated by S₂(E); e) detecting the second X-ray beam with an X-ray detector; f) repeating steps (d) and (e) for at least two different orientations of the second X-ray beam with respect to the object; g) defining a first basis attenuation function and a second basis attenuation function, given by μ₁(x,E) and μ₂(x,E), respectively, such that a total attenuation coefficient μ(x,E) of the voxel is given by: μ(x,E)=A(x)μ₁(x,E)+D(x)μ₂(x,E) where coefficients A and D are real numbers; h) defining initial coefficients A^(k) and D^(k); i) calculating an estimated total attenuation coefficient μ^(k)(x,E) from the equation; μ^(k)(x)(x,E)=A^(k)(x)μ₁(x,E)+D^(k)(x)μ₂(x,E) j) calculating a new estimated total attenuation coefficient μ^(k+1,S1)(x,E) associated with spectrum S₁(E) from the following equation: μ^(k+1,S1)(x,E)=P_(S1) ⁻¹{P_(S1)μ^(k)(x,E)−B_(S1)μ^(k)(x,E)+C₁(r)} where P_(S1) is an operator defined by P_(S1)μ=∫_(r)∫S₁(E)μ(E)dEdx, B_(S1) is an operator defined by B_(S1)μ=−log∫S₁(E)exp(∫_(r)(E)dx)dE, and C₁(r) represents X-ray detector output associated with S₁(E); k) calculating a new estimated total attenuation coefficient μ^(k+,S2)(x,E) from the following equation: μ^(k+1,S2)(x,E)=P_(S2) ⁻¹{P_(S2)μ^(k)(x,E)−B_(S2)μ^(k)(x,E)+C_(S2)(r)} where P_(S2) is an operator defined by P_(S2)μ=∫_(r)∫S₂(E)μ(E)dEdx, B_(S2) is an operator defined by B_(S2)μ=−log ∫S₂(E)exp(∫_(r)μ(E)dx)dE, and C₂(r) represents X-ray detector output associated with S₂(E); l) calculate new estimated coefficients A^(k+1)(x) and D^(k+1)(x) from the following simultaneous equations: μ^(k+1,S1)(x,E)=A^(k+1)(x){circumflex over (μ)}_(1,S1)(x,E)+D^(k+1)(x){circumflex over (μ)}_(2,S1)(x,E), and μ^(k+1,S2)(x,E)=A^(k+1)(x){circumflex over (μ)}_(1,S2)(x,E)+D^(k+1)(x){circumflex over (μ)}_(2,S2)(x,E), where {circumflex over (μ)}_(1,S1)(x)=∫S₁(E)μ₁(x,E)dE, {circumflex over (μ)}_(1,S2)(x)=∫S₂(E)μ₁(x,E)dE, {circumflex over (μ)}_(2,S1)(x)=∫S₁(E)μ₂(x,E)dE, and {circumflex over (μ)}_(2,S2)(x)=∫S₂(E)μ₂(x,E)dE; m) repeating steps (i), (j), (k) and (1) using the new estimated coefficients A^(k+1)(x) and D^(k+1)(x) instead of the initial estimated coefficients A^(k)(x) and D^(k)(x).
 6. The method of claim 5 wherein steps (i), (j), (k) and (1) are repeated using successive values of the estimated coefficients A^(k+2)(x) and D^(k+2)(x).
 7. The method of claim 5 wherein steps (i), (j), (k) and (1) are repeated 4 times using successive values of the estimated coefficients.
 8. The method of claim 5 wherein steps (i), (j), (k) and (1) are repeated until $\frac{{{}B_{S1}\quad \mu^{N + 1}} - {{C_{1}(r)}{}_{2}}}{{{}B_{S1}\quad \mu^{N}} - {{C_{1}(r)}{}_{2}}} \geq {0.98\quad {and}}$ ${\frac{{{}B_{S2}\quad \mu^{N + 1}} - {{C_{2}(r)}{}_{2}}}{{{}B_{S2}\quad \mu^{N}} - {{C_{2}(r)}{}_{2}}} \geq 0.98},$

where N is an integer indicating number of algorithm iterations. 